"""
______________________________
time：2021/6/21
______________________________
xbb登录页面
"""
from Common.basepage import Basepage
from PageLocators.login_page_locs import LoginPageLocs as location


class LoginPage(Basepage):
    """"""
    """
    属性：元素定位
    方法：元素操作
    优化：把元素定位全部抽离出去,下面用类本身调用时self.XXX 只会调用到方法；
    """

    def login(self, userphone, password):
        # self.wait.until(EC.visibility_of_element_located(location.login_button_loc))  # 按钮可见了，其他两个元素一定也可见，等待一次就好了
        # self.driver.find_element(*location.userphone_loc).send_keys(userphone)
        # self.driver.find_element(*location.userpsw_loc).send_keys(password)
        # self.driver.find_element(*location.login_button_loc).click()
        # 优化：使用basepage中自己封装的方法调研
        self.input_element(location.userphone_loc, "登录页面_输入用户手机号", userphone)
        self.input_element(location.userpsw_loc, "登录页面_输入密码", password)
        self.click_element(location.login_button_loc, "登录页面_点击登录按钮")

    def get_errormsg_from_loginpage(self):
        # try:
        #     print(self.wait.until(
        #         EC.visibility_of_element_located(location.error_hint_from_loginpage_loc1)))  # 这里应该判断是用户名还是密码，然后返回其中之一
        # except:
        #     return False
        # else:
        #     # return self.driver.find_element(*self.error_hint_from_loginpage_loc1).text
        #     return self.driver.find_element(*location.error_hint_from_loginpage_loc1).text

        # 优化：使用basepage中的方法调用，页面对象代码中不需要再做等待异常处理
        return self.get_text(location.error_hint_from_loginpage_loc1, "登录页面_获取登录区错误提示信息")
